/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package BussinesLogic;

import EntidadesCM.BancoCM;
import Entities.Banco;
import controller.BancoJpaController;
import controller.exceptions.NonexistentEntityException;
import controller.exceptions.PreexistingEntityException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
 *
 * @author Nas
 */
public class BancoBL implements Serializable {
    BancoJpaController bancoJpaController;
    public void crearBanco(BancoCM bancoCM) throws PreexistingEntityException, Exception {

    }

    public void editarBanco(BancoCM bancoCM) throws NonexistentEntityException, Exception {

    }

    public void eliminarBanco(Integer id) throws NonexistentEntityException {
    }

    public List<BancoCM> buscarAllBancos() {
        List<BancoCM> bancosCM = new ArrayList<>();
        bancoJpaController = new BancoJpaController();
        BancoCM bancoCM;

        for (Banco banco : bancoJpaController.findBancoEntities()) {
            bancoCM = new BancoCM();
            bancoCM.setIdBanco(banco.getIdBanco());
            bancoCM.setNombre(banco.getNombre());
            bancoCM.setDescripcion(banco.getDescripcion());
            bancoCM.setEstado(banco.getEstado());
            bancosCM.add(bancoCM);
        }
        return bancosCM;
    }


    public BancoCM buscarBancoById(Integer id) {
        BancoCM bancoCM = new BancoCM();
        Banco banco;
        bancoJpaController = new BancoJpaController();
        banco = bancoJpaController.findBanco(id);
        if (banco != null) {
            bancoCM.setIdBanco(banco.getIdBanco());
        }
        return bancoCM;
    }

        public BancoCM convertirBancoCM(Banco banco) {
        BancoCM bancoCM = new BancoCM();
        if(banco != null){
            bancoCM = new BancoCM();
            bancoCM.setIdBanco(banco.getIdBanco());
            bancoCM.setNombre(banco.getNombre());
            bancoCM.setDescripcion(banco.getDescripcion());
            bancoCM.setEstado(banco.getEstado());
        }
        return bancoCM;
    }
    
}
